package top.lyc829.zzl_android.ui.main;

import androidx.fragment.app.Fragment;

/**
 * 支持fragment懒加载
 */
public abstract class LazyFragment extends Fragment {

    /** 是否已经加载过数据。 */
    private boolean isLoaded = false;

    @Override
    public void onResume() {
        super.onResume();
        if (!isLoaded && !isHidden()) {
            lazyInit();
            isLoaded = true;
        }
    }

    @Override
    public void onDestroyView() {
        super.onDestroyView();
        //还原回还没加载过
        isLoaded = false;
    }

    /**
     * 懒加载(子类加载数据、数据加载必须实现在个方法里)。
     */
    public abstract void lazyInit();

}
